package halftone.errdiff.pipeline

import chisel3._

class PixelGet2ErrorInPip(pixelWidth: Int, posWidth: Int)
  extends Bundle {
  val pos = UInt(posWidth.W)
  val pix = UInt(pixelWidth.W)
}

class ErrorIn2ThreshCalcPip(pixelWidth: Int, posWidth: Int, errorWidth: Int)
  extends Bundle {
  val pos   = UInt(posWidth.W)
  val pix   = UInt(pixelWidth.W)
  val errIn = Vec(4, SInt(errorWidth.W))
}

class ThreshCalc2ErrorOutPip(posWidth: Int, errorWidth: Int)
  extends Bundle {
  val pos    = UInt(posWidth.W)
  val bval   = Bool()
  val errOut = Vec(4, SInt(errorWidth.W))
}

class ErrorOut2WriteBinaryPip(posWidth: Int) extends Bundle {
  val pos  = UInt(posWidth.W)
  val bval = Bool()
}
